package com.tiancheng.trade.payment.vo.api;

import jakarta.validation.constraints.NotBlank;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;

/**
 * 统一下单的子订单
 * @author su
 *
 */
@Getter
@Setter
@ToString
public class UnifiedSubOrderVO {

	/** 商户编码 */
    @NotBlank(message = "商户编码不允许为空！")
	private String merchantCode;

    /**
     * 商户名称
     */
    @NotBlank(message = "商户名称不允许为空！")
	private String merchantName;
    
    /**
     * 产品编码
     */
    @NotBlank(message = "产品编码不允许为空！")
	private String productCode;
    /**
     * 交易中台对应的产品id
     */
    private String productId;
    /**
     * 产品名称
     */
    @NotBlank(message = "产品名称不允许为空！")
	private String productName;
    
    /**
     * 产品详情
     */
    //@NotEmpty
	private String productDetail;
        
    /**
     * 产品类型名称
     */
	private String productTypeName;
    
    /**
     * 购买数量
     */
	private Integer productCount;
    
    /**
     * 子订单实收金额
     */
    @NotNull(message = "子订单实收金额不允许为空！")
	private Integer amount;

    /**
     * 子订单应收金额
     */
    @NotNull(message = "子订单应收金额不允许为空！")
    private Integer orderAmount;

    /**
     * 子订单编号
     */
    @NotBlank(message = "子订单号不允许为空！")
	private String subOrderId;
    /**
     * 平台优惠金额
     */
    private Integer platformDiscount;
}
